﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using DTO;

namespace DAO
{
   public class NhomDichVuDAO
    {
       public List<NhomDichVuDTO> DanhSachNhomDichVu()
       {
           List<NhomDichVuDTO> kq = new List<NhomDichVuDTO>();
           string str = "select*from NhomDichVu";
           DataProvider dp = new DataProvider();
           dp.Connect();
           SqlDataReader dr = dp.ExecuteQuery(str);
           if (dr.HasRows)
           {
               while (dr.Read())
               {
                   NhomDichVuDTO ndv = new NhomDichVuDTO();
                   ndv.DonViTinh = dr["DonViTinh"].ToString();
                   ndv.MaNhomDichVu = dr["MaNhomDichVu"].ToString();
                   ndv.NDV_ID = int.Parse(dr["NDV_ID"].ToString());
                   ndv.TenNhomDichVu = dr["TenNhomDichVu"].ToString();
                   kq.Add(ndv);

               }
           }
           return kq;
       }
       public NhomDichVuDTO LayNhomDichVuByID(int nDV_ID)
       {
           NhomDichVuDTO ndv = new NhomDichVuDTO();
           string str = "select*from NhomDichVu where NDV_ID=" + nDV_ID;
           DataProvider dp = new DataProvider();
           dp.Connect();
           SqlDataReader dr = dp.ExecuteQuery(str);
           dr.Read();
           ndv.DonViTinh = dr["DonViTinh"].ToString();
           ndv.MaNhomDichVu = dr["MaNhomDichVu"].ToString();
           ndv.NDV_ID = int.Parse(dr["NDV_ID"].ToString());
           ndv.TenNhomDichVu = dr["TenNhomDichVu"].ToString();
           dp.Disconnect();
           return ndv;
       }
       public NhomDichVuDTO LayNhomDichVuByMaNhomDichVu(string maNhomDichVu)
       {
           NhomDichVuDTO ndv = new NhomDichVuDTO();
           string str = "select*from NhomDichVu where MaNhomDichVu='"+maNhomDichVu+"'";
           DataProvider dp = new DataProvider();
           dp.Connect();
           SqlDataReader dr = dp.ExecuteQuery(str);
           dr.Read();
           ndv.DonViTinh = dr["DonViTinh"].ToString();
           ndv.MaNhomDichVu = dr["MaNhomDichVu"].ToString();
           ndv.NDV_ID = int.Parse(dr["NDV_ID"].ToString());
           ndv.TenNhomDichVu = dr["TenNhomDichVu"].ToString();
           dp.Disconnect();
           return ndv;
       }
       public Boolean ThemNhomDichVu(NhomDichVuDTO ndv)
       {
           Boolean kq = false;
           string str = "insert into NhomDichVu(MaNhomDichVu,TenNhomDichVu,DonViTinh)";
           str += "values('"+ndv.MaNhomDichVu+"','"+ndv.TenNhomDichVu+"','"+ndv.DonViTinh+"')";
           DataProvider dp = new DataProvider();
           dp.Connect();
           int i = dp.ExecuteNonQuery(str);
           if (i != 0)
               kq = true;
           return kq;
       }
       public Boolean CapNhatNhomDichVu(NhomDichVuDTO ndv)
       {
           Boolean kq = false;
           string str = "update NhomDichVu set MaNhomDichVu='"+ndv.MaNhomDichVu+"' and TenNhomDichVu='"+ndv.TenNhomDichVu+"' and DonViTinh='"+ndv.DonViTinh+"'";
           str += "where NDV_ID=" + ndv.NDV_ID;
           DataProvider dp = new DataProvider();
           dp.Connect();
           int i = dp.ExecuteNonQuery(str);
           if (i != 0)
               kq = true;
           return kq;
       }
       public Boolean XoaNhomDichVuByID(int nDV_ID)
       {
           Boolean kq = false;
           string str = "Delete from NhomDichVu where NDV_ID="+nDV_ID;
           DataProvider dp = new DataProvider();
           dp.Connect();
           int i = dp.ExecuteNonQuery(str);
           if (i != 0)
               kq = true;
           return kq;
       }
       public Boolean XoaNhomDichVuByMaNhomDichVu(string maNhomDichVu)
       {
           Boolean kq = false;
           string str = "Delete from NhomDichVu where MaNhomDichVu='" + maNhomDichVu + "'" ;
           DataProvider dp = new DataProvider();
           dp.Connect();
           int i = dp.ExecuteNonQuery(str);
           if (i != 0)
               kq = true;
           return kq;
       }
    }
}
